package com.lhkj.ct.meta.modules.patient.model.vo;

import com.lhkj.ct.base.validator.group.ValGroups;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.time.LocalDate;

/**
  * <p>
  *     描述：档案表单详情
  * </p>
  */
@Setter
@Getter
public class PatientForm implements Serializable {

    private static final long serialVersionUID = 1L;

    @NotBlank(message = "档案id不能为空", groups = {ValGroups.Update.class})
    @ApiModelProperty(value = "档案id")
    private String id;

    @ApiModelProperty(value = "头像")
    private String patAvatar;

    @NotBlank(message = "姓名不能为空", groups = {ValGroups.Insert.class, ValGroups.Update.class})
    @ApiModelProperty(value = "姓名")
    private String patName;

    @NotBlank(message = "性别不能为空", groups = {ValGroups.Insert.class, ValGroups.Update.class})
    @ApiModelProperty(value = "性别")
    private String patSex;

    @ApiModelProperty(value = "性别名称")
    private String patSexName;

    @NotBlank(message = "证件类型不能为空", groups = {ValGroups.Insert.class, ValGroups.Update.class})
    @ApiModelProperty(value = "证件类型")
    private String patIdentType;

    @NotBlank(message = "证件号码不能为空", groups = {ValGroups.Insert.class, ValGroups.Update.class})
    @ApiModelProperty(value = "证件号码")
    private String patIdentNo;

    @NotNull(message = "出生日期不能为空", groups = {ValGroups.Insert.class, ValGroups.Update.class})
    @ApiModelProperty(value = "出生日期")
    private LocalDate patBirthday;

    @ApiModelProperty(value = "国籍")
    private String patNationality;

    @ApiModelProperty(value = "民族")
    private String patNation;

    @ApiModelProperty(value = "籍贯")
    private String patNativePlace;

    @ApiModelProperty(value = "地址")
    private String patAddress;

    @ApiModelProperty(value = "邮箱")
    private String patEmail;

    @ApiModelProperty(value = "手机号")
    private String patMobile;

    @ApiModelProperty(value = "婚姻状况")
    private String patMarriage;

    @ApiModelProperty(value = "职业")
    private String patJob;

    @ApiModelProperty(value = "学历")
    private String patEducation;

    @ApiModelProperty(value = "所属单位")
    private String patUnit;

    @ApiModelProperty(value = "所属机构")
    private String patOrgan;

    @ApiModelProperty(value = "门诊/诊疗(卡)号")
    private String patCardNo;

    @ApiModelProperty(value = "住院号")
    private String patInNo;

//    @ApiModelProperty(value = "档案标签")
//    private List<String> tagIds;
}
